The present application generally relates to computing technology, and more specifically, to management of threads in processors that facilitate simultaneous multithreading.
Present-day high-speed processors include the capability of simultaneous execution of instructions, speculative execution and loading of instructions and simultaneous operation of various resources within a processor. In particular, it has been found desirable to manage execution of one or more threads within a processor, so that more than one execution thread may use the processor and so that resources are used more effectively than they are typically by a single thread.